#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define ra 7
#define nome 25
#define cidade 16
#define tel 9
#define tel_alt 9
#define sexo 2
#define curso 3
#define fim "#"
#define bar "|"
#define tam 70
#define lf "\n"
#define ferro "Erro ao abrir o arquivo\n"
#define fera "Campo RA obrigatorio faltando\n"
#define linha 69

typedef struct cadastro_unicamp
{
  char sra[7];
  char snome[25];
  char scidade[16];
  char stel[9];
  char stel_alt[9];
  char ssexo[2];
  char scurso[3];
} cadastro,*cad;

//retira os espacos a mais
void str_spaces(char *str, int n);

//funcoes que verificam caracteres invalidos
int verificaRA(char *str);
int verificaNome (char *str, int n);
int verificaCurso(char *str);
int verificaSexo(char *str);

int GERA_ARQ_COM_SEPARADOR(cad strut, char*arq_saida);
void abre_arquivo(char *arq_entrada, char* arq_saida);
void abre_arquivo2(char *arq_entrada, char* arq_saida);

void GERA_ARQ_COMPACTO(FILE *f, char *input);

void str_spaces2(char *str, int n);
